<TITLE>Server -- /FAQ</TITLE>
<NEXTID 2>
<H1>How to create a W3 server</H1>
<H1>(Warning: page under construction)</H1>
<H2>Questions</H2>What's the difference between a server and a gateway ? Which one do
I need ? What's the easiest way to create a server ? How do I customize
the distributed software to my needs ? How can I write an index server
?
<H2>Basics</H2>Since this FAQ came up, a lot more documentation about starting servers
has come onto the web, so it might pay you too browse a bit more.
 There are so many ways, that it might seem complicated, but in fact
most of the methods are very easy.<P>
<A NAME=1 HREF=../Daemon/Overview.html>The server that we distribute</A> as WWWDaemon is in two parts: a common
HTDaemon program taking care of the communications, and a variable
HTRetrieve function called by HTDaemon with the significant part of
the address (i.e. after host) split as argument and keywords (look
at the code). The default HTRetrieve function, located in HTRetrieve.c,
only knows about finding files and sending them. To make an index
server, you need an HTRetrieve that knows how to query a database,
or otherwise find info, from keywords supplied after the '?' in the
address. It can be as simple as a 'grep' in a series of files.<P>
 We provide 3 example index servers built this way: VMSHelpGate, which
gives access to VMS help, FindGate which gives access to a mainframe
search engine called XFind, and WAISGate, which speaks the WAIS protocol
to contact their search engines. You can read about all this in the
Web...<P>
Oh yes,  the ISINDEX tag should be returned by the server to notify
the client that it accepts searches.<P>
Page under construction.
<ADDRESS><A NAME=0 HREF=http://info.cern.ch./hypertext/TBL_Disclaimer.html>Tim BL</A>
</ADDRESS>